import request from '@/utils/request';
import type {RootObject}  from '@/types/index';

/**
 * @param {String} url 请求地址
 * @param {Object} options 配置项以及 请求参数
 * @returns  {Promise} 请求返回的promise
 */
export const testrequest = () => request<RootObject>('/acc',{
  method: 'get',
    params: {
      name: 'zhangsan',
      age: 18
    }
})
/**
 * 这里定义泛型res ,在放回的数据中，返回的data类型为res
 * @param {String} url 请求地址
 * @param {Object} params  请求参数
 * @returns  {Promise<res>} 请求返回的promise 泛型res,.then中形参的data类型为res
 */
export const testGet1 =(params:any) => request.get<RootObject>('/acc',params)
/**
 * 第三个参数为配置项,想要自定义配置项，可以传入第三个参数 具体参数查看utils/options.ts 配置项
 * @param {String} url 请求地址
 * @param {Object} params  请求参数
 * @param {Object} options 配置项
 * @returns  {Promise<res>} 请求返回的promise 泛型res,.then中形参的data类型为res
 */
export const testGet2 = (params:any) => request.get<RootObject>('/acc',params,{
  headers: {
    'Content-Type': 'application/json'
    }
})

  /**
 * 第三个参数为配置项,想要自定义配置项，可以传入第三个参数 具体参数查看utils/options.ts 配置项
 * @param {String} url 请求地址
 * @param {Object} options 配置项以及请求参数
 * @returns  {Promise} 请求返回的promise
 */
export const testPost = () => request('/acc',{
  method: 'post',
  params:{
    id:1
  },
  data: {
      name: 'zhangsan',
      age: 18
    }
})
///addArticle

export const testPost1 = (data:any) => request.post<RootObject>('/addArticle',data)
//第三个参数为配置项,想要自定义配置项，可以传入第三个参数 具体参数查看utils/options.ts 配置项
export const testPost2 = (data:any) => request.post<RootObject>('/addArticle',data,{
  headers: {
    'Content-Type': 'application/json'
    }
})